원시 데이터를 레이블 없는 흐름으로 상상해 보세요—기억의 야생 외곽지대입니다. 러스트에서는 데이터를 먼저 다음처럼 다룹니다 연속적인 조각들 (슬라이스와 배열). 이 원시 데이터에서 정의된 스키마로의 전환은 익명의 메모리에서 의도적인 구조물로의 전환을 의미합니다.
1. '원시' 단계
슬라이스와 배열은 데이터를 가장 간단한 형태로 표현합니다. 안전성은 컴파일 타임 소유권 검사 에 의존하지 않고 런타임 오버헤드를 피하기 위해 사용됩니다. 참조(예:&)를 사용하면 값의 이동 없이 데이터에 대한 '뷰'를 생성할 수 있습니다.
2. 의미적 한계
함수들이 first_word 처럼 유연하지만(이름이나 문자열 리터럴 등) String, &str또는 리터럴을 허용하는 경우에도 의미적 한계에 도달합니다. 컴파일러는 메모리가 안전하다는 것은 알고 있지만, 데이터가 실제로 무엇을 나타내는지(예: 사용자 이름인지 센서 값인지)는 표현하는지 (예: 사용자 이름과 센서 값 사이) 알 수 없습니다. 우리는 이를 구조체.
아키텍처 원칙: 소유권, 참조, 슬라이스의 개념은 러스트 프로그램에서 컴파일 타임에 메모리 안전성을 보장하여 가비지 컬렉터의 필요성을 제거합니다.
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>